home *** CD-ROM | disk | FTP | other *** search
-
- I hope that you are used to bison grammars :)
-
-
- Grammar
- =======
-
- Function calls:
- rule 7 statement -> funcresult ';'
- rule 8 statement -> STR '(' ')' ';'
- rule 24 funcresult -> STR '(' funcpar ')'
- rule 9 statement -> ':' funcpar ')' ';' /* Call the last func again with */
- /* new parameters */
- "statements" that can be executed in XbW
- rule 5 statement -> NUMVAR ':' '=' numexp ';'
- rule 6 statement -> STRVAR ':' '=' strexp ';'
-
- rule 10 statement -> '?' funcresult ';'
- rule 11 statement -> '?' numexp ';'
- rule 12 statement -> '?' strexp ';'
- rule 13 statement -> IF '(' numexp ')'
- rule 14 statement -> '@' STR '(' funcpar ')' ';'
- rule 15 statement -> '@' STR '(' ')' ';'
- rule 16 statement -> nptrexp ':' '=' nptrexp ';'
- rule 17 statement -> sptrexp ':' '=' strexp ';'
- rule 18 statement -> iptrexp ':' '=' numexp ';'
- rule 19 statement -> iptrexp '+' '=' numexp ';'
- rule 20 statement -> iptrexp '-' '=' numexp ';'
- rule 21 statement -> iptrexp '+' '=' numexp '[' numexp ']' ';'
- rule 22 statement -> iptrexp '-' '=' numexp '[' numexp ']' ';'
- rule 23 statement -> error ';'
-
-
- rule 25 funcpar -> funcpar strexp
- rule 26 funcpar -> funcpar numexp
- rule 27 funcpar -> funcpar nptrexp
- rule 28 funcpar -> funcpar dptrexp
- rule 29 funcpar -> strexp
- rule 30 funcpar -> numexp
- rule 31 funcpar -> nptrexp
- rule 32 funcpar -> dptrexp
-
- rule 33 nptrexp -> NPTR ':' strexp '.' strexp
- rule 34 nptrexp -> NULLPTR
- rule 35 sptrexp -> SPTR ':' strexp '.' strexp
- rule 36 iptrexp -> IPTR ':' strexp '.' strexp
- rule 37 dptrexp -> DPTR ':' strexp '.' strexp
-
- rule 38 numexp -> NUM
- rule 39 numexp -> '(' NUMVAR ')'
- rule 40 numexp -> numexp '=' '=' numexp
- rule 41 numexp -> numexp '!' '=' numexp
- rule 42 numexp -> numexp '<' numexp
- rule 43 numexp -> numexp '>' numexp
- rule 44 numexp -> numexp '<' '=' numexp
- rule 45 numexp -> numexp '>' '=' numexp
- rule 46 numexp -> numexp '<' '>' numexp
- rule 47 numexp -> numexp '+' numexp
- rule 48 numexp -> numexp '-' numexp
- rule 49 numexp -> numexp '/' numexp
- rule 50 numexp -> numexp '*' numexp
- rule 51 numexp -> '-' numexp
- rule 52 numexp -> '(' numexp ')'
- rule 53 numexp -> '[' numexp ']'
- rule 54 numexp -> strexp '=' '=' strexp
- rule 55 numexp -> strexp '>' strexp
- rule 56 numexp -> strexp '<' strexp
- rule 57 numexp -> strexp '>' '=' strexp
- rule 58 numexp -> strexp '<' '=' strexp
- rule 59 numexp -> strexp '!' '=' strexp
- rule 60 numexp -> funcresult
- rule 61 numexp -> iptrexp
-
- rule 62 strexp -> STR
- rule 63 strexp -> sptrexp
- rule 64 strexp -> STRVAR
- rule 65 strexp -> strexp ',' strexp
- rule 66 strexp -> '(' strexp ')'
- rule 67 strexp -> '[' strexp ']'
-